@charset "utf-8";
:root{
	/*颜色*/
	--tpl:
	linear-gradient(96.15deg,#3d459f 2.85%,rgb(127 140 205 / 75%) 100%),#FFFFFF;
	--tpl-hover:#677ecf;
	--dark:#5d677c;
	--dark-hover:#384253;
	--default:#8783e1;
	--default-hover:#7773d7;
	--red:#f1716c;
	--red-hover:#d15451;
	--orange:#f57e00;
	--orange-hover:#cf6c03;
	--yellow:#fac413;
	--yellow-hover:#e9b712;
	--green:#26bc5c;
	--green-hover:#179b47;
	--cyan:#8cd03d;
	--cyan-hover:#7dc22d;
	--blue:#768fe7;
	--blue-hover:#677ecf;
	--purple:#9e83e1;
	--purple-hover:#896eca;
	--white:#ffffff;
	--white-hover:#f5f5f5;
	--gray:#b2b2b2;
	--gray-hover:#989898;
	--black:#4a4a4a;
	--black-hover:#000000;
	/* 圆角 */
	--radius:2px;
}

/*颜色*/
.red{color:var(--red)!important;}
.orange{color:var(--orange)!important;}
.yellow{color:var(--yellow)!important;}
.green{color:var(--green)!important;}
.cyan{color:var(--cyan)!important;}
.blue{color:var(--blue)!important;}
.purple{color:var(--purple)!important;}
.white{color:var(--white)!important;}
.gray{color:var(--gray)!important;}
.black{color:var(--black)!important;}

/* 背景色 */
.bg-red{background-color:var(--red)!important;}
.bg-red:not(.no-hover):hover{background-color:var(--red-hover)!important;}
.bg-orange{background-color:var(--orange)!important;}
.bg-orange:not(.no-hover):hover{background-color:var(--orange-hover)!important;}
.bg-yellow{background-color:var(--yellow)!important;}
.bg-yellow:not(.no-hover):hover{background-color:var(--yellow-hover)!important;}
.bg-green{background-color:var(--green)!important;}
.bg-green:not(.no-hover):hover{background-color:var(--green-hover)!important;}
.bg-cyan{background-color:var(--cyan)!important;}
.bg-cyan:not(.no-hover):hover{background-color:var(--cyan-hover)!important;}
.bg-blue{background-color:var(--blue)!important;}
.bg-blue:not(.no-hover):hover{background-color:var(--blue-hover)!important;}
.bg-purple{background-color:var(--purple)!important;}
.bg-purple:not(.no-hover):hover{background-color:var(--purple-hover)!important;}
.bg-white{background-color:var(--white)!important;}
.bg-white:not(.no-hover):hover{background-color:var(--white-hover)!important;}
.bg-gray{background-color:var(--gray)!important;}
.bg-gray:not(.no-hover):hover{background-color:var(--gray-hover)!important;}
.bg-black{background-color:var(--black)!important;}
.bg-black:not(.no-hover):hover{background-color:var(--black-hover)!important;}

/* 基础 */
*{margin:0;padding:0;font-family:Tahoma,Arial,sans-serif,'Microsoft YaHei';font-size:15px;box-sizing:border-box;}
body{color:#373e4e;background: #6b696f;}
*::selection{color:#fff;background-color:#4f9552;}
input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#c5c5c5;}
input{color:#525d76;resize:none;outline:none;height:25px;line-height:25px;padding:0 10px;box-sizing:border-box;border:1px solid #888;vertical-align:middle;border-radius:var(--radius);}
input[readonly="readonly"]{cursor: not-allowed;}
textarea{color:#525d76;width:100%;resize:none;outline:none;padding:10px;box-sizing:border-box;overflow-y:auto;font-family:Consolas,sans-serif,'Microsoft YaHei';border:1px solid #888;line-height:20px;font-size:15px;}
select{padding: 0 10px;height:25px;line-height:25px;vertical-align:middle;box-sizing: border-box;border: 1px solid #888;border-radius: var(--radius);outline: none;}
label{margin-right: 10px;display:inline-flex;align-items:center;white-space:nowrap;min-width:30px;vertical-align: middle;}
label input{display:inline-block;vertical-align:middle;margin-right: 5px;}
label input[type=file]{display:none;}
code{color:#475485;background:#f4f5f9;padding: 1px 5px;display:inline-block;margin:0 5px;border-radius: 3px;font-size: 14px;letter-spacing: 0.5px;}
h1{font-size:24px;}
h2{font-size:20px;}
h3{font-size:17px;}
h4{font-size:16px;}
h5{font-size:14px;}
h6{font-size:12px;}
h1,h2,h3,h4,h5,h6{margin-bottom:15px;color:#000;}
p,.p{margin-bottom:10px;}
a{color:#373e4e;}
a:hover{color:#57af4c;text-decoration:underline;}
ul,ol{padding-left:20px;}
ul li,ol li{margin:8px 0;}
form{width:100%;flex:1;}

/* 表格 */
table{width:100%;margin-bottom:1rem;background-color:#fff;border-spacing:0;border-collapse:collapse;}
table thead{background: #f6f8fc;}
table tr,table th,table td{background-color:inherit;}
table th,table td{padding:4px 15px;border-bottom:1px solid #e9ecef;border:1px solid #e9ecef;}
table th{vertical-align:bottom;border-bottom:none;white-space:nowrap;padding:6px 15px;}
.table{overflow-x:auto;}
.table-hover tr:hover{background:#f6f8fc;}

/*鼠标经过滑出线*/
.a-line{position:relative;cursor:pointer;line-height:20px;vertical-align:initial;}
.a-line:hover,.a-line.active{color:var(--tpl);}
.a-line:hover::after{width:100%;}
.a-line::after{content:'';display:inline-block;height:1px;width:0;background:var(--tpl);position:absolute;bottom:-2px;left:0;right:0;margin:0 auto;transition:all .3s;}
.a-line.active::after{width:100%;}

/* 常用 */
.center{text-align:center;}
.bold{font-weight:bold;}
.normal{font-weight:normal;}
.nowrap,.nowrap *{white-space:nowrap;}
.wrap,.wrap *{white-space:break-spaces;}
.tag{color: #fff;background: #9295b5;padding:0 5px;border-radius: 2px;}
.color{color:#fb7a89;}
.u{text-decoration:underline;color:#7aa9fb;}
.line{height:12px;background:linear-gradient(135deg,transparent,transparent 43%,#7f94b3,transparent 50%,transparent 100%),linear-gradient(45deg,transparent,transparent 43%,#7f94b3,transparent 50%,transparent 100%);background-size:12px 11px;background-repeat:repeat-x,repeat-x;}
.btn{color:white;background-color:#373e4e;padding:0 25px;border:none;height:25px;line-height:25px;margin:10px 0;display:inline-block;text-decoration:none!important;cursor:pointer;vertical-align:middle;border-radius:var(--radius);}
.btn:hover{color:#ffffff;background-color:#5e6779;}
.indent{text-indent:2em;}
.flex{display:flex;align-items:center;}
.border{border:1px solid #eee;padding:10px;}
.border p:last-child{margin-bottom:0;}
.title{font-size:16px;width:100%;background:inherit;overflow:hidden;position:relative;margin:20px 0 10px;clear:both;display:flex;align-items:center;}
.title:before{content:"";width: 3px;height: 12px;background: #3b4071;display:inline-block;margin-right: 5px;}
.title span{display:inline-block;margin-left:5px;color:#4caf50;}
.title a{margin: 0 5px;}
.form-row{min-height:27px;line-height:27px;font-size:16px;width:100%;background:inherit;overflow:hidden;position:relative;margin:10px 0;clear:both;display:flex;flex-wrap:wrap;align-items: flex-start;padding-left:10px;}
.form-row:before{content:"";width:3px;height:14px;background:#4a4a4a;position:absolute;top:7px;left:0;}
.form-row .btn{margin:0;}
.form-col{display:flex;margin-right:30px;align-items:center;}
.form-group{margin:10px 0;}
.form-group label{margin-left:25px;}
.form-group label:first-child{margin-left:0}
@media (max-width:768px){
	.form-row input[type="text"]{width:100%!important;}
	.form-row>.form-col{flex:0 0 100%;margin-bottom:10px;}
}

/*图标按钮开关*/
.toggle-menu{outline:none;width: 18px;height:25px;line-height:25px;position:relative;text-align:center;display:inline-block;cursor:pointer;}
.toggle-menu i,.toggle-menu:after,.toggle-menu:before{display: block;width: 18px;height:1px;background: #fff;position:absolute;left:0;top:10px;}
.toggle-menu:after,.toggle-menu:before{content:'';}
.toggle-menu:before{top:4px;}
.toggle-menu:after{top:16px;}
.toggle-menu.open:after{transform:translateY(-6px) rotateZ(-45deg);}
.toggle-menu.open:before{transform:translateY(6px) rotateZ(45deg);}
.toggle-menu.open i{display:none;}

/*信息*/
.info{display:flex;align-items:center;flex-wrap: wrap;}
.info a{color: #ff5722;margin: 0 9px 9px 0;}
.info-item{background: #eaebf3;padding:5px 20px;margin: 0 9px 9px 0;white-space: nowrap;border-radius: 2px;}
.info-item span,.info-text span{font-weight:bold;color:#000;}
.info-text{margin-right:25px;}

/*头部*/
.header{font-size:22px;padding-bottom: 10px;display:flex;justify-content:space-between;align-items:center;color: #fff;}
.header-title{flex-wrap:nowrap;}
.header-title a{text-decoration:none;font-size:16px;color: #fff;}
.header-menu{display:flex;flex-wrap:wrap;align-items:center;}
.header-menu a{padding:0 5px;text-decoration:none;font-weight:normal;display:inline-block;color: #fff;}
.header-menu a:hover{text-decoration:underline;}
@media (max-width:768px){
	.header-title{flex-wrap:nowrap;margin-bottom:5px;width: 60%;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}
	.header-menu a:first-child{padding-left:0px;}
}

/*底部*/
.footer {background:#fff;padding:20px;background:#fff;border-radius:0 0 7px 7px;}
.footer-bar{font-size:15px;color:white;background: #9295b5;padding:2px 10px;display:flex;justify-content:space-between;align-items:center;border-radius: 2px;}
.footer-bar span{margin-right:15px;}
.footer-bar a{color: #fff;padding:0 5px;}
.footer-bar a.icp{color:#eff1fa;margin-left:20px;}
.footer-bar .right span{font-size:13px;font-weight:100;}
.link{display:inline;padding-left:0;}
.link li{list-style:none;display:inline-block;margin:0;margin-right:10px;}
@media (max-width:768px){
	.footer{padding:10px;}
	.footer-bar{padding:10px;display:block;}
}

/*侧栏*/
.sidebar{background: #FFF;width: 180px;position: fixed;left: 30px;top: 60px;z-index: 5;border-radius: 7px;padding: 160px 0 0;background-image: url(../img/sidebar.jpg);background-repeat: no-repeat;background-size: cover;background-position: center;}
.sidebar:last-child{border-right:none;}
.sidebar::before {content:"";display:block;height: 114px;width: 18px;position: absolute;top: -90px;left: 0;right: 0;margin: 0 auto;z-index: 2;border-radius: 0 0 2px 2px;background-image: url(../img/rope.png);}
.sidebar::after {content:"";display:block;height: 17px;width: 17px;border-radius: 50%;background: #6b696f;position: absolute;top: 18px;left: 0;right: 0;margin: 0 auto;z-index: 1;}
.sidebar-title{font-weight:bold;border-bottom:1px solid #eee;padding-bottom:5px;margin-bottom:5px;padding-left:5px;}
.sidebar-tag li{color:#999999;padding:4px 0;margin:0;}
.sidebar-tag a{text-decoration:none;}
.content{width:100%;padding: 20px;background: #fff;border-radius: 7px 7px 0 0;position: relative;overflow: hidden;flex: 1 1 auto;}
.sidebar+.content{padding:0 20px;}
.logo{text-align: center;font-size: 80px;color: #ffffff;}
.toggle-menu{display:none;}
.menu{position: relative;background: rgb(255 255 255 / 90%);padding: 30px 0;border-radius: 7px;overflow-y: auto;}
.menu a{color:#373e4e;padding:0 25px;height:30px;display:flex;align-items:center;justify-content: center;text-decoration:none!important;cursor:pointer;margin: 5px 20px;border-radius: 7px;/* background: rgb(255 255 255); */}
.menu a:hover{background: #fff;}
.menu a.active{color:#ffffff;background: var(--tpl);}

/*内容*/
.main{position:relative;border-radius: 7px;overflow: hidden;margin: 30px;margin-left: 230px;display: flex;flex-direction: column;min-height: calc(100vh - 60px);}
.content .title:first-child{margin-top: 0;}
.pjax-content{width:100%;}
@media (max-width:768px){
	body{margin:0;}
	.toggle-menu{display:inline-block;}
	.sidebar{height: 100%;position: fixed;z-index: 8;transition: all .3s;left: -200px;padding-top: 30px;top: 0;background: #fff;border-radius: 0;box-shadow: 0 0 10px rgb(0 0 0 / 15%);}
	.sidebar-open{left:0;}
	.sidebar::before,.sidebar::after {display:none;}

	.main{margin: 10px;}
	.main>.sidebar{display:none;}
	.main>.content{padding: 10px;flex: 1;width: 100%;}
}

/*表单*/
.form{margin:20px;display:flex;}
.key{display:inline-block;text-align:right;width:100px;padding:0 10px;vertical-align:top;line-height:25px;}
.value{flex:1;line-height:25px;display: flex;align-items: center;flex-wrap: wrap;}
.value input[type=text],.value input[type=password],.value input[type=number]{width:100%;}
.value label{margin:0 15px 0 0;line-height:25px;cursor:pointer;}
.value small{color:#9b9b9b;font-size:14px;flex:0 0 100%;}
.value .btn{margin:0;}
@media (max-width:768px){
	.form{display:block;margin:20px 0;}
	.key{width:100%;text-align:left;padding:0;font-weight:bold;display:flex;align-items:center;}
	.key:before{content:"";width:3px;height:14px;background:#4a4a4a;display:inline-block;margin-right:10px;}
}
.img-upload{position:relative;height:min-content;}
.img-upload img{border:1px solid #eee;max-width:202px;display:block;}
.img-upload-btn{background: rgb(244 67 54 / 72%);color:#fff;text-align:center;width:100%;height: 30px;position:absolute;bottom: 0;left:0;display:flex;align-items:center;justify-content:center;cursor: pointer;display: flex;}

/* 验证码 */
.vcode-img{width:80px;height: 25px;border: 1px solid #979ca6;border-radius: 2px;cursor: pointer;vertical-align: middle;}
.vcode-input{width:80px;}

/*提示条*/
.tip{background: #f3f6ff;padding: 10px;vertical-align:middle;margin-bottom:10px;border-radius: 2px;}
.tip.tip-red{color:#4A4A4A;background:#fff7f6;}
.tip.tip-orange{color:#4A4A4A;background:#fff5e6;border: 1px solid #f1e7d8;}
.tip.tip-yellow{color:#4A4A4A;background:#fffdf1;}
.tip.tip-green{color:#4A4A4A;background:#f3fdf4;}
.tip.tip-cyan{color:#4A4A4A;background:#f9fdf3;}
.tip.tip-blue{color:#4A4A4A;background:#eef9ff;}
.tip.tip-purple{color:#4A4A4A;background:#fcf5ff;}
.tip.tip-white{color:#4A4A4A;background:#ffffff;}
.tip.tip-gray{color:#4A4A4A;background:#f1f1f1;}
.tip.tip-black{color:#4A4A4A;background:#d6d6d6;}
.tip span{color:#000;font-weight:bold;margin:0 5px;}
.tip p:last-child{margin-bottom:0;}

/*询问弹窗*/
.alert{position:fixed;top:0;left:0;z-index:99990;width:100%;height:100%;display: flex;align-items: center;}
.alert-box{width: 300px;background:#fff;position: relative;margin:auto;top:0;left:0;right:0;bottom:0;box-shadow:4px 4px 10px rgba(0,0,0,0.13);border-radius:var(--radius);}
.alert-bg{width:100%;height:100%;margin:0 auto;background:#000000;opacity:0.15;top:0;left:0;position:fixed;}
.alert-content{font-size:16px;position:relative;padding: 20px;}
.alert-footer{width:100%;border-top:1px solid #f3f3f3;padding: 10px;text-align:right;}
.alert-footer>div{padding:0 10px;height:25px;line-height:25px;cursor:pointer;display:inline-block;}
.alert-cancel{color:#888;}
.alert-cancel:hover{color:#768fe7;}
.alert-confirm{background: #948cd1;color:#fff;border-radius:var(--radius);}
.alert-confirm:hover{background:#677ecf;color:#fff;}

/*消息提示框*/
.pop{color:#dfdfdf;position:fixed;width:250px;height:fit-content;margin:auto;display:inline-block;bottom:0;top:0;right:0;left:0;z-index:999999;padding:10px 0;background:rgb(66 66 66 / 85%);text-align:center;}
.pop-title{padding:10px 20px;display:inline-block;font-size:15px;}

/*错误*/
.notice{padding: 20px;border-top:1px solid #e7e7e7;background:#fff;margin-right: 30px;margin-left: 210px;}
.notice p{margin:0;color:#505050}

/*顶部对话框*/
.prompt{background:rgba(0,0,0,0.16);position:fixed;z-index:99920;top:0;left:0;width:100%;height:100%;}
.prompt-box{text-align:center;font-size:16px;background:#fff;position:fixed;z-index:99921;top:0;left:0;width:100%;padding:25px;border-top:2px solid #959595;animation-name:prompt;animation-duration:1s;}
.prompt-close{font-size:40px;color:#b9b9b9;float:right;cursor:pointer;position:absolute;top:0;right:20px;-webkit-tap-highlight-color:rgba(255,255,255,0);user-select:none;}
.prompt-close:hover{color:#768fe7;}
.prompt-title{color: #768fe7;display:inline-block;}
.prompt-content{color:#5d5d5d;display:inline-block;margin-bottom:5px;}
.prompt-footer span{color:#939393;display:inline-block;cursor:pointer;font-weight:normal;font-size:15px;margin: 10px 10px 0;}
.prompt-footer span:hover{color: #768fe7;}
.prompt-text{text-align:center;padding:40px 20px;margin:50px;border:1px dashed #b9b9b9;flex:1;height:min-content;}
@keyframes prompt{
	0%{margin-top:-100px;opacity:0}
	to{margin-top:0;opacity:1}
}
@media (max-width:768px){
	.prompt-title{display:block;text-align:center;padding-bottom:15px;font-size:18px;}
	.prompt-footer{padding-top:4px;}
}

/* 分页 */
.paging{padding:20px 0;font-size:16px;display:table;}
.paging a{padding:10px;margin-left:-1px;border:none;border-bottom:2px solid #eaeaea;text-decoration:none;}
.paging a:hover{border:none;background:none;border-bottom:2px solid #4CAF50;color:#4CAF50;}
.paging a.paging-active{color:#4CAF50;background:none;border:none;border-bottom:2px solid #4CAF50;}
.paging-prev:hover,.paging-next:hover{color:#696a6b;background:#ffffff;border:none;border-bottom:2px solid #696a6b;}
.paging-disabled{color:#c0c0c0!important;cursor:not-allowed;border-bottom:2px solid #eaeaea!important;}
.paging-ell{padding:10px;display:inline-block;border-bottom:2px solid #eaeaea;}

/* 选项卡*/
.tab{position:relative;margin-bottom:20px;}
.tab-menu{font-size:14px;min-height: 40px;position:relative;user-select:none;white-space:nowrap;overflow-x:auto;display: flex;align-items: end;}
.tab-menu a{color:#585858;padding:0 20px;height: 32px;line-height: 32px;display:inline-block;cursor:pointer;background: #f5f5f5;vertical-align:bottom;position:relative;-webkit-user-drag:none;text-decoration: none;margin-right: 5px;}
.tab-menu a:hover{background: #919aad;color:#fff;}
.tab-menu a.active{background: var(--dark);height: 32px;line-height: 32px;color:#fff;}
.tab-menu-left{line-height: 40px;}
.tab-menu-left a{margin-right:0px;}
.tab-menu-right{line-height: 40px;margin-left: auto;}
.tab-menu-right a{margin-left:5px;}
.tab-main{width:100%;background:#ffffff;padding:20px;box-shadow: 0px -2px 0px rgb(0 0 0 / 5%);position:relative;}
.tab-content{display:none;}
.tab-content.active{display:block;}

/* 网站首页 */
.news p{margin-bottom: 0 !important;}
.index-news {max-height:232px;overflow-y:auto;}
.index-news p{margin-bottom:5px;}

/* 导航管理 */
.navbar .form-row{margin:20px 0;}
.navbar input[type="text"]{border:none;border-bottom:1px solid #c6cbd1;border-radius:0;}
.navbar input[name="name[]"]{width:150px;}
.navbar input[name="url[]"]{width: 300px;}

/* 分类管理 */
.category .form-row{margin:20px 0;}
.category input[type="text"]{border:none;border-bottom:1px solid #c6cbd1;border-radius:0;}
.category input[name="name[]"]{width:150px;}
.category input[name="newId[]"]{width:150px;}
.category input[name="intro[]"]{width: 300px;}

/* 友情链接 */
.link .form-row{margin:20px 0;}
.link input[type="text"]{border:none;border-bottom:1px solid #c6cbd1;border-radius:0;}
.link input[name="name[]"]{width:150px;}
.link input[name="url[]"]{width: 300px;}


/* 文章管理 */
.article{display: flex;}
.article-list{flex: 1;margin-right: 20px;}
.article-tab{flex: 0 0 200px;border-left: 1px solid #e9ecef;padding-left: 20px;}
.article-menu{display:flex;justify-content:space-between;flex-wrap:wrap;align-items:center;align-content:flex-start;}
.article-menu-left{display:flex;align-items:center;}
.article-menu-left select{margin-right:10px;}
.article-form [name=title]{width: 614px;}
.article-form [name=tag]{width:200px;}
.article-form [name=id]{width:200px;}
.article-form [type=submit]{margin-left: 50px;}
.article-form textarea{min-height: initial !important;}
.article-create,.article-editor{display:flex;flex-direction:column;position: absolute;height: calc(100% - 40px);width: calc(100% - 40px);}
.article-create-content,.article-editor-content{flex: 1 1 auto;}
.article-create-content .fk-editor-main,.article-editor-content .fk-editor-main{height:100%;}
.article-create-intro textarea,.article-editor-intro textarea{flex: 1;}
.article-create-content textarea,.article-editor-content textarea{height: 100%;flex: 1;}
@media (max-width:768px){
	.article {display: initial;}
	.article-create-intro textarea,.article-editor-intro textarea{margin-left:0}
	.article-menu{display:block;}
	.article-create,.article-editor{display: initial;position: initial;height: initial;width: initial;}
	.article-form [type=submit]{margin-left: auto;margin-right: auto;}
}

/*主题列表*/
.tpl{padding:0;display:flex;flex-wrap:wrap;}
.tpl li{color:#525d76;padding:15px;margin:10px;list-style:none;background:#ebecf2;width:230px;border-radius:var(--radius);}
.tpl-icon{width:100%;}
.tpl-icon img{width:200px;height:200px;border-radius:var(--radius);object-fit:cover;}
.tpl-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;}
.tpl-version{color: #aeaeae;margin-left: 5px;font-size: 13px;}
.tpl-info{margin-top:8px;}
.tpl-btn{color: #fff !important;display:inline-block;background:#373e4e;padding:1px 8px;font-size:13px;cursor:pointer;text-decoration:none;border-radius:var(--radius);margin-right:3px;}
.tpl-btn:hover{color:#fff;background:#21242a;}
.tpl-operate{margin-top:8px;display:flex;}
.tpl-use{color:#fff;display:inline-block;background:#a6afc3;padding:1px 8px;font-size:13px;border-radius:var(--radius);margin-right:3px;}
@media (max-width:768px){
	.tpl{padding-left:0;}
	.tpl li{list-style:none;}
}

/*扩展列表*/
.ext{margin-top:15px;}
.ext li{color:#525d76;padding:10px 0;border-bottom:1px solid #f6f6f6;margin:0;display:flex;align-items:center;}
.ext li:last-child{border-bottom:none;}
.ext-icon{width:40px;height:40px;flex:0 0 40px;border-radius:var(--radius);overflow:hidden;}
.ext-icon img{width:100%;}
.ext-info{margin-left:10px;flex:1;}
.ext-name{color:#4CAF50;display:inline-block;min-width:145px;display:flex;align-items:center;}
.ext-install .ext-name{color:#4caf50;}
.ext-version{color: #aeaeae;margin: 0 10px;font-size: 13px;}
.ext-btn{color:#fff;display:inline-block;background:#373e4e;padding:1px 8px;font-size:13px;cursor:pointer;margin:0 5px;text-decoration:none;border-radius:var(--radius);}
.ext-btn:hover{color:#fff;background:#21242a;}
.ext-intro{color:#999999;}
@media (max-width:768px){
	.ext{padding-left:0;}
	.ext li{list-style:none;}
}

/*记录列表*/
.log{margin-top:15px;}
.log li{color:#525d76;padding:10px 0;border-bottom:1px solid #f6f6f6;margin:0;}
.log li:last-child{border-bottom:none;}
.log p{margin-bottom:0;}
.log-ip{color:#4CAF50;display:inline-block;min-width:145px;}
.log-time{color:#999999;margin-left:10px;}
@media (max-width:768px){
	.log{padding-left:0;}
	.log li{list-style:none;}
}

/* 加载中 */
.loading{background:#ffffff;position:absolute;z-index:9999999;width:100%;height:100%;top:0;left:0;opacity: .7;}
.loader{position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;width:12px;height:12px;border-radius:12px;animation:loader-m 1s ease-in-out infinite;}
.loader:before{content:"";position:absolute;top:0px;left:-25px;height:12px;width:12px;border-radius:12px;-webkit-animation:loader-g 1s ease-in-out infinite;animation:loader-g 1s ease-in-out infinite;}
.loader:after{content:"";position:absolute;top:0px;left:25px;height:12px;width:12px;border-radius:12px;-webkit-animation:loader-d 1s ease-in-out infinite;animation:loader-d 1s ease-in-out infinite;}
@keyframes loader-g{
	0%{background-color:rgba(0,0,0,0.2);}
	25%{background-color:rgb(0,0,0);}
	50%{background-color:rgba(0,0,0,0.2);}
	75%{background-color:rgba(0,0,0,0.2);}
	100%{background-color:rgba(0,0,0,0.2);}
}
@keyframes loader-m{
	0%{background-color:rgba(0,0,0,0.2);}
	25%{background-color:rgba(0,0,0,0.2);}
	50%{background-color:rgb(0,0,0);}
	75%{background-color:rgba(0,0,0,0.2);}
	100%{background-color:rgba(0,0,0,0.2);}
}
@keyframes loader-d{
	0%{background-color:rgba(0,0,0,0.2);}
	25%{background-color:rgba(0,0,0,0.2);}
	50%{background-color:rgba(0,0,0,0.2);}
	75%{background-color:rgb(0,0,0);}
	100%{background-color:rgba(0,0,0,0.2);}
}

/* 外边距 */
.m{margin:20px !important;}
.ml{margin-left:20px !important;}
.mr{margin-right:20px !important;}
.mt{margin-top:20px !important;}
.mb{margin-bottom:20px !important;}

/* 内边距 */
.p{padding:20px !important;}
.pl{padding-left:20px !important;}
.pr{padding-right:20px !important;}
.pt{padding-top:20px !important;}
.pb{padding-bottom:20px !important;}

/*动画*/
.ani-in{animation:in .6s;}
.ani-out{animation:out .6s;}
.ani-up-in{animation:upIn .6s;}
.ani-down-in{animation:downIn .6s;}
.ani-left-in{animation:leftIn .6s;}
.ani-right-in{animation:rightIn .6s;}
.ani-up-out{animation:upOut .6s;}
.ani-down-out{animation:downOut .6s;}
.ani-left-out{animation:leftOut .6s;}
.ani-right-out{animation:rightOut .6s;}
@keyframes in{
	from{opacity:0;}
	to{opacity:1;}
}
@keyframes upIn{
	from{opacity:0;transform:translate3d(0,-10%,0);}
	to{opacity:1;transform:translate3d(0,0,0);}
}
@keyframes downIn{
	from{opacity:0;transform:translate3d(0,10%,0);}
	to{opacity:1;transform:translate3d(0,0,0);}
}
@keyframes leftIn{
	from{opacity:0;transform:translate3d(-10%,0,0);}
	to{opacity:1;transform:translate3d(0,0,0);}
}
@keyframes rightIn{
	from{opacity:0;transform:translate3d(10%,0,0);}
	to{opacity:1;transform:translate3d(0,0,0);}
}
@keyframes out{
	from{opacity:1;}
	to{opacity:0;}
}
@keyframes upOut{
	from{opacity:1;}
	to{opacity:0;transform:translate3d(0,-10%,0);}
}
@keyframes downOut{
	from{opacity:1;}
	to{opacity:0;transform:translate3d(0,10%,0);}
}
@keyframes leftOut{
	from{opacity:1;}
	to{opacity:0;transform:translate3d(-10%,0,0);}
}
@keyframes rightOut{
	from{opacity:1;}
	to{opacity:0;transform:translate3d(10%,0,0);}
}